package br.ufrn.engcomp.arq.negocio;

import br.ufrn.engcomp.arq.exceptions.DAOException;
import br.ufrn.engcomp.arq.exceptions.SegurancaException;
import br.ufrn.engcomp.comum.dao.UsuarioDAO;
import br.ufrn.engcomp.comum.dominio.Usuario;

/**
 *
 *@author Claudio Trindade
 *
 */

public class ProcessadorLogon extends AbstractProcessador<Usuario> {

	
	public Usuario logar(Usuario usuario) throws SegurancaException, DAOException {

		UsuarioDAO dao = new UsuarioDAO();

		Usuario userDB = dao.findAtivoByLogin(usuario.getLogin());

		if (userDB != null && userDB.getSenha().equals(usuario.getSenha())) {
			return userDB;
		} else {
			throw new SegurancaException("erro_senha_invalida");
		}

	}
	
	public boolean autenticar(String login, String senha) throws SegurancaException, DAOException {
		Usuario u = new Usuario();
		u.setLogin(login);
		u.setSenha(senha);
		try {
			logar(u);
			return true;
		} catch (SegurancaException ex) {
			return false;
		}
	}
}
